package com.quiz.bis.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.quiz.bis.domain.model.ExamMonitoringLog;
import com.quiz.common.core.domain.R;
import com.quiz.common.mybatis.core.page.PageQuery;

import java.util.List;

/**
 * 监考记录服务接口
 * @author ahuan
 */
public interface IExamMonitoringService {

    /**
     * 记录监考事件
     * @param log 监考记录
     * @return {@link R}<{@link Long}> 记录ID
     */
    R<Long> logMonitoringEvent(ExamMonitoringLog log);

    /**
     * 处理监考事件
     * @param logId 记录ID
     * @param handleResult 处理结果
     * @return {@link R}<{@link Boolean}> 是否处理成功
     */
    R<Boolean> handleMonitoringEvent(Long logId, String handleResult);

    Page<ExamMonitoringLog> selectPage(Long groupId, Long examId, Long sessionId, Long userId, Integer eventType, Integer status, String startTime, String endTime, PageQuery page);

}